const db = wx.cloud.database()


Page({
  data: {
    user:{},//个人数据
    shuju: {}, //数据库商品数据
    chosed_tab: '', //左侧tab选中
    chosed_gifts: [], //选中的赠品信息
    chosed_coups: [], //选中的优惠券信息
    tab_list: [{
        name: '积分商品'
      },
      {
        name: '优惠券'
      },
    ],
    goods_list: [],
    total_num: 0, //选中的赠品个数
    total_price: 0, //选中的赠品价格
    coupon_list: [],
    total_coupon: 0, //选中的优惠券的个数
  },

  onLoad: function (options) {
    this.getDataBius();
    this.getUserinif();
  },


  onShow: function () {

  },
  //获取个人数据到页面
  getUserinif(){
    wx.getStorage({
      key: 'autt',
      success :res=>{
        console.log(res.data)
        this.setData({user:res.data})
      }
    })
  },

  //获取数据库数据
  getDataBius() {
    let d
    wx.cloud.callFunction({
        // 云函数名称
        name: 'shangpin',
        // 传给云函数的参数
      })
      .then(res => {
        //{jf:[{}],yhj:[{}]}
        d = res.result
        console.log(d);
        let arr = [];
        for (let i = 0; i < d.jf.length; i++) {
          const e = d.jf[i];
          arr.push({
            id:e._id,
            name: e.name, //名字
            num: e.kucun>1?1:0, //默认个数
            kucun: e.kucun, //库存个数
            price: e.qian, //价钱
            text:e.text,
            src:e.src,//图片地址
          })
          let brr = []
          for (let i = 0; i < d.yhj.length; i++) {
            const e = d.yhj[i];
            brr.push({
              id:e._id,
              name: e.name, //名字
              range: e.text, //介绍
              kucun: e.kucun, //库存
              num: 1, //默认个数
            })
          }
          this.setData({
            shuju: d,
            goods_list: arr,
            coupon_list: brr,
          })
        }
        // console.log(res.result) 
      })
      .catch(console.error)
  },



  /**
   * 左边侧边栏选择切换
   * @param {*} e 
   */
  choseTab(e) {
    let {
      index
    } = e.currentTarget.dataset;
    if (this.data.chosed_tab === index || index === undefined) {
      return false;
    } else {
      this.setData({
        chosed_tab: index,
      })
    }
  },
  /**
   * 选择赠品或优惠券的方法
   * @param {*} e 
   */
  selectOne(e) {
    let {
      index,
      type,
    } = e.currentTarget.dataset, list = this.data[type],
      chosed_gifts = [], chosed_coups = [];
    list.forEach((item, index0) => {
      if (index == index0) {
        item.checked = !item.checked
      }
      if (item.checked) {
        if (type == 'goods_list') {
          chosed_gifts.push(item)
        } else {
          chosed_coups.push(item)
        }
      }
    })
    if (type == 'goods_list') {
      // chosed_gifts.forEach(item => {
      //   item.price = parseFloat(item.price)
      // })
      this.setData({
        chosed_gifts,
        total_num: chosed_gifts.length,
      }, () => {
        this.getTotalPrice()
      })
    } else {
      this.setData({
        chosed_coups,
        total_coupon: chosed_coups.length
      })
    }
    this.setData({
      [type]: list,
    })
  },
  /**
   * 计算金额
   * @param {*} e 
   */
  getTotalPrice() {
    let total_price = this.data.chosed_gifts.reduce((total, cur) => {
      if(this.data.user.jf< total + parseFloat(cur.num) * parseFloat(cur.price)){
        wx.showToast({
          title: '钱好像不太够了',
          icon: 'none'
        })}
      return total + parseFloat(cur.num) * parseFloat(cur.price)
    }, 0)
    
    
   
    this.setData({
      total_price,
    })
  },
  /**
   * 数量的++，和--的方法
   *   @param {*} e 
   */
  numChange(e) {
    let {
      index,
      type,
      list
    } = e.currentTarget.dataset, list0 = this.data[list];
    list0.forEach((item, index0) => {
      if (index == index0) {
        if (type == 0) {
          if (item.num <= 1) {
            return wx.showToast({
              title: '不能在减少了哦',
              icon: 'none'
            })
          }
          item.num--;
        } else {
          if (index == index0) {
            if (type == 0) {
                return wx.showToast({
                  title: '这个卖光咯~~',
                  icon: 'none'
                })
              }
            if (item.num >= item.kucun) {
              return wx.showToast({
                title: '没货咯~~',
                icon: 'none'
              })
            }
            item.num++;
          }
        }
      }
    })
    this.setData({
      [list]: list0
    })
    this.getTotalPrice()
  },
  //购买结账
  gomai(e){
    let shop = this.data.chosed_gifts;
    console.log(shop);
    wx.setStorage({
      key: "gwc",
      data: shop
    })
    // 页面跳转
    let x = `/pages/shangdian/gouwuche/index`
    wx.navigateTo({
      url: x,
    });
  },

})